<?php
class library_common {
	/**
	 * 字符串转为日期
	 * @param string $str 时间字符串(示例2010-07-21 16:49:22)
	 * @return int
	 */
	public static function str2date($str, $time = 0) {
		$array = explode("-", $str);
		$year = $array[0];
		$month = $array[1];
	
		$array = explode(":", $array[2]);
		$minute = empty($array[1]) ? 0 : $array[1];
		$second = empty($array[2]) ? 0 : $array[2];
	
		$array = explode(" ", $array[0]);
		$day = $array[0];
		$hour = empty($array[1]) ? 0 : $array[1];
	
		if($time == 1) {
			return mktime($hour, $minute, $second, $month, $day, $year);	
		} else {
			return mktime(0, 0, 0, $month, $day, $year);
		}
	}
	
	/**
	 * 格式化金额数字
	 * @param int $num 金额数字
	 * @param string $num_lite_style 指定样式
	 * @return string
	 */
	public static function money_num($num, $num_lite_style = 'num_lite') {
	    $num_arr = explode('.', $num);
	
	    empty($num_arr[1]) && $num_arr[1] = '00';	// 如果没有小数，添加00
	    strlen($num_arr[1]) == 1 && $num_arr[1] = $num_arr[1].'0';	// 如果小数只有1位，末尾添加0
	
	    $num_arr[1] = '<span class="'.$num_lite_style.'">'.$num_arr[1].'</span>';
	    return implode('.', $num_arr);
	}

	/**
	 * 获取时间名称 (凌晨、上午、下午、晚上)
	 * @param int $time 时间戳
	 */
	public static function get_time_name($time) {
		$hour = date('H', $time);
		if($hour < 5) {
			return '凌晨';
		} elseif ($hour < 12) {
			return '上午';
		} elseif ($hour < 18) {
			return '下午';
		} else {
			return '晚上';
		}
	}

	/**
	 * 获取星期中文数字
	 */
	public static function get_week_name($time) {
		$weeks = array('日', '一', '二', '三', '四', '五', '六');
		return $weeks[date('w', $time)];
	}
	
	
	/**
	 * 获取URL网页内容
	 */
	public static function get_contents($url, $expire = 0) {
		// 缓存文件名
		$file = ROOT.'/cache/'.md5($url);
		
		// 如果过期大于0、文件存在、没过期
		if($expire > 0 && file_exists($file) && time() - filemtime($file) < $expire) {
			$content = file_get_contents($file);
		} else {
			$content = file_get_contents($url);
			if($expire > 0) {
				file_put_contents($file, $content);
			}
		}
		
		return $content;
	}
	
}
